Tabbing to all kinds of objects which do not normally receive keyboard focus

Note: text in square brackets [] denotes text spoken by the screenreader.
Welcome to this tutorial on tabbing to all kinds of objects which do not normally receive keyboard focus.
AT Prime's ability to tab to blocks of text was covered in the first tutorial but what about other types of controls and objects which are not blocks of text and which you can't normally tab to? AT Prime lets you tab to these other kinds of controls when you turn on the Optimise Tabbing mode. To show how this works, I'll be running the Demo app for AT Prime which you can run directly from the Help menu on the AT Prime menu. First, I'm going to launch the demo app without AT Prime running though in order to show you what the window is like without AT Prime's features.
[Demo app for AT Prime]
This Demo app doesn't really do anything apart from showing you some standard controls and how you can use AT Prime's features to improve accessibility and the usability of an application. This tutorial is all about tabbing to all kinds of controls that do not normally receive keyboard focus, so let's first tab through the window without AT Prime running and see what we have.
[Enter your name, edit focused. ... Combo box, Male, collapsed. ... This is a simple window which can be used to demonstrate some of AT Prime's powerful features, text. ... I feel good!, checkbox, not checked. ... All application developers should make their controls accessible, checkbox, not checked, alt A. ... Pick code, combo box, collapsed, alt P. ... Current total, edit, read only, selected, 63. ... Hello, button. ... OK, button. Enter your name, edit, blank]
Now, we're back at the first control in the window which is the 'Enter your name' edit field. So, what are we not tabbing to? What controls are being missed out by the screenreader?
I'm launching AT Prime:
[AT Prime is ready. Demo app for AT Prime. Enter your name, edit focused, blank]
where focus is still on the 'Enter your name' edit field. What I want to do is to turn on the Optimise Tabbing mode and, to do that, I open the AT Prime menu:
[Context menu
Text Inspector
Object Inspector
Window Inspector
Favourites Menu
Favourites Inspector
Add the object with focus as a favourite
Turn on Optimise Tabbing, G]
And here is the item 'Turn on Optimise Tabbing'. I'll press Enter on that and then we'll see if there is a difference. When I start to tab forward, the first thing we hear is that there is a short click every time I press the tab key.
[Combo box, Male, collapsed ... This is a simple window which can be used to demonstrate some of AT Prime's ... I feel good, checkbox, not checked]
This is to alert you that tabbing mode is turned on so that you can remember to turn it off when you no longer need it.
[All application developers should make their controls accessible, checkbox, not checked, Alt A ... Pick code:, text, Alt P]
Here's the text label for the 'Pick code' combo box. It wasn't receiving keyboard focus when I was tabbing through the window when AT Prime was not active.
[Pick code, combo box, collapsed, Alt P ... Current total, text]
Similarly, here's the text label for the 'Current total' edit field. But it is when I tab past the OK button at the bottom of the window, and cycles back up to the top, that we will really experience a difference.
[Current total, edit, read only, 25 ... Hello, button ... OK, button ... Minimize button, moves the window out of the way]
[Minimize button, moves the window out of the way]
Here's the Minimize button. That button is actually located within the title bar of an application and you would not normally be able to tab to it. If I tab again:
[Restore button, unavailable, puts a minimized or maximized window back to normal]
This is the Restore button which is beside the Minimize button on the title bar and which is currently unavailable. When I tab again,
[Close button, closes the window]
This is the Close button which is also found on the title bar. That's the button which has a picture of an 'x' on it which sighted people usually click with the mouse in order to close a window.
If I keep tabbing,
[Button. Button. Button. Button. Enter your name, text]
We hear that there are four unnamed buttons followed by the text label for the 'Enter your name' edit field. When I tabbed through this window before, these buttons did not receive focus and we didn't know they were there. The next problem is that these buttons are unnamed - a later tutorial will show how these buttons can be labelled but for the purposes of this tutorial, I can show you that you can activate controls like this when you are in Optimise Tabbing mode.
I'm going to tab back to the first of these buttons.
[Button. Button. Button. Button]
When you're in Optimise Tabbing mode, and you want to activate a button like this, you press the spacebar or Enter as usual.
[Demo app dialog. You selected the new document button. OK button]
And now a message box has appeared simply telling me what action would have been taken if this had been a real button. This one would have apparently created a new document.
I'll tab to the next button:
[Button]
And press Enter.
[Demo app dialog. You selected the Open document button. OK button]
A different message. These messages are just showing you that, in addition to being able to tab to controls which don't normally receive focus, you will be able to activate them in the normal way when in Optimise Tabbing mode.
OK, now I want to turn off Optimise Tabbing mode. Back in the AT Prime menu:
[Context menu]
Arrowing down,
[... Turn off Optimise Tabbing, G]
And now the item says 'Turn off Optimise Tabbing'. I'll press Enter and tab around the top of the window.
[Demo app for AT Prime. Combo box, Male, collapsed. ... Enter your name, edit, blank. ... OK button]
And now there's no sign of those four unnamed buttons and the buttons contained in the title bar.
It's often the case with applications that you are not able to tab to toolbar buttons. Many applications don't let you tab to the toolbars. Optimise Tabbing lets you do that and, of course, to tab to other kinds of controls in the window which don't normally receive keyboard focus. What this means is that, with AT Prime's Optimise Tabbing mode, you do not need to use any special navigation modes of your screenreader in order to find and interact with a control which does not normally receive keyboard focus.
If you use screen enlargement software of any kind with your screenreader, you will notice that the display tracks each of the objects being tabbed to in Optimise Tabbing mode. This is because AT Prime moves the mouse to each of the objects you tab to and, if your screen enlargement software is set to follow the mouse pointer, the object you tab to will be tracked on the screen. This means that you don't have to move the mouse around the screen to find a button or other control that doesn't normally get keyboard focus. If you don't need or don't want the display to track tabbing in Optimise Tabbing mode, you can turn this feature off in the AT Prime Settings window.
The ability to tab to all kinds of controls in Optimise Tabbing mode sounds fantastic. But there's a downside. In applications with many of these kinds of hidden buttons, the Optimise Tabbing mode would mean that you would have to tab through many controls to get to the one you want to interact with. But, of course, AT Prime has a solution to this: you can hide unwanted controls from tabbing in Optimise Tabbing mode so that you can customise keyboard access so that you only tab to controls you want to interact with. Hiding objects from tabbing in Optimise Tabbing mode is the subject of the next tutorial.